perm filename TEST2[E,ALS]2 blob
sn#161641 filedate 1975-06-06 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00006 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00003 00002 THIS IS A TEST FILE.
C00007 00003 E.36 Replaced most of the JRST 4,. 's by reporting calls to TELLZ
C00011 00004 E.32 contains code for TELLME but no automatic calling
C00016 00005 pointer word of the previous item and in the right half a forward
C00020 00006 D←4 Dispatch table entry
C00023 ENDMK
C⊗;
THIS IS A TEST FILE.
123456
and some more text to append.
;ZDATA,ZSIX,ZBLT,ZEDFIL,ZLIST,EXIST
COMMENT ⊗
ZDATA is used to hold records of data extracted from EDFIL when a file change
requested. The format of EDFIL, and hence of each record in ZDATA is as follows:
Word Contents
THIS IS A TEST FILE
ASD
FGH
;Written by Frederick H.G. Wright II
;with modifications by D. Poole, Art Samuel, and Stan Kugell.
The Essay program was contracted by John Mccarthy and written by Stan KugellZZZZZZZ
SOME MORE TEXT TO APPEND TO MAKE IT
ABCDABCDEFGHIJKLMNOPQRSTUVWXYZEFGHIJKLMNOPQRSTUVABCDABCDEFGHIJKLMNOPQRSTUVWXYZEFGHIJKLMNOPQRSTUV
ABCDABCDEFGHIJKLMNOPQRSTUVWXYZEFGHIJKLMNOPQRSTUV
PRINTS /Type 0 to get ETV, 1 to get ESSAY, then <CTRL><META><LF>./
;E -- DISPLAY EDITOR FOR STANFORD
PRINTS /Type 0 to get ETV, 1 to get ESSAY, then <CTRL><META><LF>./
ESSFLG←←.INSER TTY:
IFE ESSFLG<TITLE ETV -- DISPLAY EDITOR FOR STANFORD↔SUBTTL FREDERICK H.G. WRIGHT II
PRINTS / You are assembling ETV, the Stanford Display Editor
/
;Written by Frederick H.G. Wright II
;with modifications by D. Poole, Art Samuel, and Stan Kugell.
;The Essay program was contracted by John Mccarthy and written by Stan Kugell
PRINTS/ MAR.28,1975 E.29(P481) Apr.6 1975 E.31(P487) Apr.7 1975 E.32(P487)
APR 10 1975 E.33(P487) APR 14 E.34 MAY 19 E.36 May 20 E.37
E.32 contains code for TELLME but no automatic calling
E.32 Reloaded on April 8 with minor corrections.
E.33 With some automatic calling (checksum error and UFATAL calls) Apr. 10 1975.
E.34 ALINE bug fixed Apr.14 1975
E.36 Replaced most of the JRST 4,. 's by reporting calls to TELLZ
E.37 Fixed even two INVALID DIRECTORY reports to FBI
ALIN←←2000 ;ALINE FLAG
INDEN←←4000 ;INDENT FLAG
CEN←←10000 ;CENTER FLAG
JOINF←←20000 ;JOIN FLAG
LETF←←10000 ;LETTER - WITH LT2F => LOWER CASE
LT2F←←4000 ;ALONE => $%._
SSP1←←2000 ;TYPE 1 SPECIAL SEARCH STRING CHAR
SSP2←←1000 ; " 2 " ...
EDOK←←40 ;RIGHTMOST OF 4 BITS (SHIFT BY CONTROL BITS) FOR LINE EDITOR LEGALITY
;COMMAND DISPATCH FLAGS
NOEDIT←←200000 ;DISPATCH DIRECTLY FROM LINE EDIT WITHOUT REPLACING LINE
DOEDIT←←100000 ;REPLACE LINE BEFORE DISPATCHING FROM LINE EDIT
/>
IFN ESSFLG<TITLE ESSAY
PRINTS / You are assembling Essay.
/>
DEFINE ESSAY <IFN ESSFLG>
DEFINE NOESS <IFE ESSFLG>
COMMENT ⊗ TO PUT UP A NEW E WITH AN UPPER SEGMENT, USE THE COMMANDS:
.LOA %SE%1<%2V%1B ;LOADS WITH SYMBOLS AND NNRAID IN THE UPPER SEGMENT
.S 137 ;RENAMES UPPER, WRITE PROTECTS AND SETS ITS PROTECTION CONSTANT
THIS IS A TEST FILE
;E -- DISPLAY EDITOR FOR STANFORD
;Written by Frederick H.G. Wright II
;with modifications by D. Poole, Art Samuel, and Stan Kugell.
;The Essay program was contracted by John Mccarthy and written by Stan Kugell
PRINTS /Type 0 to get ETV, 1 to get ESSAY, then <CTRL><META><LF>./
;E -- DISPLAY EDITOR FOR STANFORD
;Written by Frederick H.G. Wright II
;with modifications by D. Poole, Art Samuel, and Stan Kugell.
;The Essay program was contracted by John Mccarthy and written by Stan Kugell
PRINTS /Type 0 to get ETV, 1 to get ESSAY, then <CTRL><META><LF>./
ESSFLG←←.INSER TTY:
IFE ESSFLG<TITLE ETV -- DISPLAY EDITOR FOR STANFORD↔SUBTTL FREDERICK H.G. WRIGHT II
PRINTS / You are assembling ETV, the Stanford Display Editor
/
PRINTS/ MAR.28,1975 E.29(P481) Apr.6 1975 E.31(P487) Apr.7 1975 E.32(P487)
APR 10 1975 E.33(P487) APR 14 E.34 MAY 19 E.36 May 20 E.37
E.32 contains code for TELLME but no automatic calling
E.32 Reloaded on April 8 with minor corrections.
E.33 With some automatic calling (checksum error and UFATAL calls) Apr. 10 1975.
E.34 ALINE bug fixed Apr.14 1975
E.35 Fix for file-directory disagreements. Apr. 18 1975
E.36 Replaced most of the JRST 4,. 's by reporting calls to TELLZ
E.37 Fixed even two INVALID DIRECTORY reports to FBI
/>
IFN ESSFLG<TITLE ESSAY
PRINTS / You are assembling Essay.
/>
DEFINE ESSAY <IFN ESSFLG>
DEFINE NOESS <IFE ESSFLG>
COMMENT ⊗ TO PUT UP A NEW E WITH AN UPPER SEGMENT, USE THE COMMANDS:
.LOA %SE%1<%2V%1B ;LOADS WITH SYMBOLS AND NNRAID IN THE UPPER SEGMENT
.S 137 ;RENAMES UPPER, WRITE PROTECTS AND SETS ITS PROTECTION CONSTANT
.SSAVE SYS E ;BE SURE TO SSave (to keep the UPPER SEGMENT around)
Early versions of E that were up for varying lengths of time:
Nov. 6 1974. E.7 Nov. 8 1974. E.8 Nov.17 1974. E.10
Nov.18 1974. E.10 Dec. 3 1974. E.12 Dec. 9 1974. E.15
Dec.10 1974. E.16(P424) Dec.14 1974. E.17(P431) DEC.17 1974. E.18(P431)
Dec.18 1974. E.19(P431) Jan.3 1975. E.20(P439 Jan.5,1975 E.21(P439)
Jan.10,1975. E.22(P442) Jan 15,1975 E.23(P442) Mar.12,1975. E.26(P474)
Mar.13,1975 E.27 Mar.17 1975 E.27(P477) Mar.19 1975 E.28(P477)
DATA STRUCTURE.
A page of text is represented in memory as a theaded list of
items each representing a single line of the text. Each item in this
representation contains four words of header information, the text of
the line in question and one trailer word.
The first header word contains a TXTCOD, which for ordinary text
is a 2 in the left half and the total number of words in the right half.
This word is used by the free storage management routines. It does not
seem to be used by the text manipulation sections of the code. The word
count is duplicated in the trailer word which is also used only by the
free storage routines.
The second header word is a pointer word. It contains a
backward pointer in the left half pointing to the location of the
pointer word of the previous item and in the right half a forward
pointer to the location of the pointer word of the next item. The
location of the pointer word for the first item is contained in the word
at PAGE and the backward pointer for the first item points back to
PAGE. The last item on the page points to the word BOTSTR and this word
points back to this last item and forward to itself. When in the ATTACH
mode, the location ATTBUF points to the pointer word of the first
attached line and back to the pointer word of the last attached line.
The third word contains flag bits in the left half identifying
the type of the line and two 9-bit bytes in the right half. Flag bits
which have been identified are:
400000 the line is a page mark.
200000 the line is ARRLIN (CURRENT to which the arrow points).
100000 the line is WINLIN (the first line on the window).
040000 the line is an Essay reference (for the ESSAY version).
The first byte in the right half contains the total count of the
characters as the line is stored on the disk, where a TAB symbol counts
1 and the terminating CR and LF are counted.
The second byte contains the count of the characters as they are
displayed where a TAB is counted as the number of spaces it produces and
the terminating CR and LF are not counted.
The fourth word is the serial number of the line as kept in the
core. This number is changed every time that a change is made to the line
so this number then bears no relationship to the position of the line on
the page.
The text occupies an integral number of words and is padded out
with nulls.
The trailer word contains the count of the total words in the
item, including header and trailer words. This duplicates the
information in the right half of the first header word.
TABs are handled in a pecular way. When a TAB occurs it is stored
as a TAB and this is followed by as many spaces as the TAB in fact
produces in the text and then by a terminating TAB.
end of comment ⊗
NOLIT
;Register Most common usage
F←0 ;Flag bits
A←1 ;Argument value
B←2 ;CONTROL and META bits as stripped from command character.
C←3 ;Character
D←4 ;Dispatch table entry
E←5 ;Table location.
G←6
;RIGHT HALF FLAGS
REDNLY←←1 ;READ ONLY MODE
COPY←←2 ;NEED TO DO COPY (← OR →)
DIROK←←4 ;HAVE COMPLETE DIR
UPDTXT←←10 ;LINE 1 CHANGED - UPDATE DIR AT WRPAGE
WRITE←←20 ;SOMETHING CHANGED - NEED TO WRITE IT
EOF←←40 ;INPUT EOF DETECTED - DO ANOTHER LOOKUP (LOSING SYSTEM!)
EDDIR←←100 ;EDITING THE DIRECTORY PAGE
ARG←←200 ;ARG WAS TYPED TO COMMAND
DSPSCR←←400 ;REDISPLAY SCREEN
DSPALL←←1000 ;REDISPLAY WHOLE SCREEN
FILLUZ←←2000 ;EDITING NONSTANDARD FORMAT FILE
REL←←4000 ;RELATIVE ARG (+ OR -)
NEG←←10000 ;NEGATIVE ARG
EDITM←←20000 ;DISPATCH IS FROM LINE EDIT
EDBRK←←40000 ;(WITH EDITM) COMMAND TYPED IN MIDDLE OF LINE
XPAGE←←100000 ;WILL EXPAND FILE FOR PAGE
UPDIR←←200000 ;NON-TEXT CHANGE TO DIR
ATTMOD←←400000 ;IN ATTACH MODE
;LEFT HALF FLAGS
ENTRD←←1 ;EDIT FILE HAS BEEN ENTERED
CLRBF←←2 ;CLEAR OBUF AFTER OUTPUT
NOSHUF←←4 ;DON'T SHUFFLE FREE STORAGE
NOCHK←←10 ;DON'T TRY TO CORE DOWN
OFFEND←←20 ;ARROW ON LINE N+1
NULLIN←←40 ;CURRENT LINE IS EMPTY
ARRPG←←100 ;ARROW POG IS SELECTED
TF1←←200 ;TEMP FLAG
PMLIN←←400 ;CURRENT LINE IS PAGE MARK
OKF←←1000 ;SHOULD TYPE "OK"
;New flags added by ALS. May be represented by 3 bits if space gets tight.
ALIN←←2000 ;ALINE FLAG
INDEN←←4000 ;INDENT FLAG
CEN←←10000 ;CENTER FLAG
JOINF←←20000 ;JOIN FLAG
ZATT←←40000 ;To save ATTACH on a Z-EPSIL command.
; 100000
; 200000
NGPUSE←←400000 ;Network Graphic User